<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <script src="./lib/vue.js"></script>
        <title>14 vue-slot组件插槽</title>
    </head>
    <body>
        <div id="box">
            <!-- 
                slot作用：
                1、可以将内容文本插入组件组件中；
                2、可以改变内容文本的作用域，例如可以直接调用根组件的方法；
            -->
            <child>
                <ul slot="a">
                    <li v-for="(data, index) in dataList">{{ data }}</li>
                </ul>
                <p slot="b">22222222222</p>
            </child>
        </div>

        <script>
            Vue.component('child', {
                template: `<div style="background:yellow">
                    <slot name="a"></slot>
                    <h2>child</h2>
                    <slot name="b"></slot>
                </div>`
            });

            const vm = new Vue({
                el: '#box',
                data() {
                    return {
                        dataList: ['aaa', 'bbb', 'ccc']
                    };
                }
            });
        </script>
    </body>
</html>
